package cn.iocoder.yudao.module.bpm.controller.admin.tohandle.flow.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 审批流待办中心——流程flow表 Excel 导出 Request VO，参数和 BpmHandleFlowPageReqVO 是一致的")
@Data
public class BpmHandleFlowExportReqVO {

    @Schema(description = "外部审批流id", example = "25227")
    private String extFlowId;

    @Schema(description = "标题")
    private String title;

    @Schema(description = "发起者帐号", example = "sunwukong")
    private String senderUsername;

    @Schema(description = "发起者姓名", example = "孙悟空")
    private String senderName;

    @Schema(description = "发起时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] sendTime;

    @Schema(description = "结束时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] endTime;

    @Schema(description = "来源系统", example = "6072")
    private Integer sourceSystemId;

    @Schema(description = "来源审批url链接", example = "https://www.iocoder.cn")
    private String sourceUrl;

    @Schema(description = "流程状态")
    private Integer flowStatus;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

    @Schema(description = "更新时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] updateTime;

    @Schema(description = "创建者")
    private String creator;

    @Schema(description = "更新者")
    private String updater;

    @Schema(description = "1 删除；0 有效", example = "1")
    private Boolean deleted;

}
